\section{Motivation} % Agenda heading

\begin{frame}{Broadcast Topology and Applications}

The Scenario:
\begin{itemize}
\item{One source, multiple sinks.}
\item{Lossy/fading channel, no feedback}
\item{Live streaming of TV, Movies etc.}
\item{3G, 4G, WLAN etc.}
\end{itemize}

\end{frame}

\begin{frame}{The Challenge}
\begin{center}
% Initial problem
\textit{How should a video be streamed from one source, to multiple sinks with heterogeneous channel conditions via WLAN?}
% Scenario figure
\begin{figure}[ht!]
\centering
\resizebox{0.9\linewidth}{!}{
	\begin{tikzpicture}[->,>=stealth',shorten >=1pt,auto,node distance=2.5cm,
		            semithick]
	\tikzstyle{every state}=[fill=white,text=black]

		\node[state]	(S)  at (0,0)		{$S$};
		\node[state]	(N1) at (0,2)		{$n_1$};
		\node[state] 	(N2) at (3,1.5)		{$n_2$};
		\node[state] 	(N3) at (5,0)		{$n_3$};
		\node[state]  	(N4) at (3,-1.5)	{$n_4$};
		\node[state]  	(N5) at (0,-2)		{$n_5$};
		\node[state]  	(N6) at (-3,-1.5)	{$n_6$};
		\node[state]  	(N7) at (-5,0)		{$n_7$};
		\node[state]  	(N8) at (-3,1.5)	{$n_8$};

		\path	(S) edge  node {$p_1$}	(N1)
			(S) edge  node {$p_2$}	(N2)
			(S) edge  node {$p_3$}	(N3)
			(S) edge  node {$p_4$}	(N4)
			(S) edge  node {$p_5$}	(N5)
			(S) edge  node {$p_6$}	(N6)
			(S) edge  node {$p_7$}	(N7)
			(S) edge  node {$p_8$}	(N8);
		
	\end{tikzpicture}}
\caption{2.1, Page 12}
\end{figure}
\end{center}
\end{frame}


%% Video
\section{Video Analysis}
\begin{frame}{Video Analysis}
MPEG2/MPEG4
\begin{center}
\begin{figure}[h!]
\centering
\resizebox{0.8\linewidth}{!}{
	\begin{tikzpicture}[>=stealth',shorten >=1pt,auto, semithick]
		            
	\tikzstyle{every state}=[rectangle, fill=white,text=black,,minimum height=1.3cm, minimum width=2cm, node distance=3cm]

		\node[state] (I1) {I};
		\node[state, right of=I1] (P1) {P};
		\node[state, right of=P1] (P2) {P};
		\node[state, right of=P2] (B)  {B};
		\node[state, right of=B, draw=gray, text=gray]  (I2) {I};

		\path	(P1)	edge[->,bend right=75] node {}	(I1);
		\path	(P2)    edge[->,bend right=75] node {}	(P1);
		\path	(B)	edge[->,bend right=75] node {}	(P2);
		\path	(B)	edge[->,bend left=75] node {} (I2);
		
		\draw[decorate, decoration={brace,mirror,raise=10pt, amplitude=10pt}] (I1.south west) -- (B.south east) node[midway, below,yshift=-20pt] {Group of Pictures};
		
	\end{tikzpicture}
	}
\caption{2.4, Page 15}
\end{figure}
\end{center}

Initial Approach:
\begin{itemize}
\item I-frames of higher importance than P-frames 
\item $\approx \nicefrac{1}{3}$ I-frame, $\nicefrac{2}{3}$ P-frame data for GOP 20
\end{itemize}
\end{frame}


\section{State of the Art}
%\begin{frame}{A Solution - UEP by Network Coding}
\begin{frame}{State of the Art}
Random Linear Network Coding:
\begin{itemize}
\item{Equal Error Protection}
\item{All data is created equal}
\item{Superior to naive broadcast}
\end{itemize}
\small{
\begin{center}
\begin{align} &
\left[
\begin{array}{c}	
\mathbf{p_{1}} \\
\mathbf{p_{2}} \\
\vdots \\
\mathbf{p_{m}}
\end{array}
\right]
=
\left[
\begin{array}{cccc}	
c_{11} & c_{12} & \cdots & c_{1g} \\
c_{21} & c_{22} & \cdots & c_{2g} \\
\vdots & \vdots & \ddots & \vdots \\
c_{m1} & c_{m2} & \cdots & c_{mg}
\end{array}
\right]
\left[
\begin{array}{c}	
\mathbf{x_{1}} \\
\mathbf{x_{2}} \\
\vdots \\
\mathbf{x_{g}}
\end{array}
\right] \label{eq:nc-packet-coding} \\ \notag
%\intertext{Where:}
%&\text{g is the number of source packets, also known as generation size} \notag\\
%&\text{$\mathbf{x_i}$ are the source packets} \notag\\
%&\text{$c_{ij}$ are the coding coefficients $\in \mathbb{F}_{2^m}$} \notag\\
%&\text{$\mathbf{p_i}$ are the resulting network coded packets} \notag\\
%&\text{$\mathbf{m}$ is the number of generated packets} \notag\\
%&\text{$m\geq g$ to allow receivers to decode}\notag
\end{align}
\end{center}}
The next move?
\end{frame}

\begin{frame}{A Solution - Unequal Error Protection}
Unequal Error Protection by Network Coding:
\begin{itemize}
\item{All data is \textbf{not} created equal}
\item{How to?}
\item{What are the trade-offs?}
\end{itemize}
\small{
\begin{center}
\begin{align} &
\left[
\begin{array}{c}	
\mathbf{p_{1}} \\
\mathbf{p_{2}} \\
\vdots \\
\mathbf{p_{m}}
\end{array}
\right]
=
\left[
\begin{array}{cccc}	
 ? &   &   &   \\
   & ? &   &   \\
   &   & ? &   \\
   &   &   & ?
\end{array}
\right]
\left[
\begin{array}{c}	
\mathbf{x_{1}} \\
\mathbf{x_{2}} \\
\vdots \\
\mathbf{x_{g}}
\end{array}
\right] \label{eq:nc-packet-coding} \\ \notag
%\intertext{Where:}
%&\text{g is the number of source packets, also known as generation size} \notag\\
%&\text{$\mathbf{x_i}$ are the source packets} \notag\\
%&\text{$c_{ij}$ are the coding coefficients $\in \mathbb{F}_{2^m}$} \notag\\
%&\text{$\mathbf{p_i}$ are the resulting network coded packets} \notag\\
%&\text{$\mathbf{m}$ is the number of generated packets} \notag\\
%&\text{$m\geq g$ to allow receivers to decode}\notag
\end{align}
\end{center}}
We consider two different methods:
\begin{itemize}
\item{Non-expanding Windows (NW)}
\item{Expanding Windows (EW)}
\end{itemize}
\end{frame}


%''Network coding, Network coding, Network coding''\\
%''binding material before we go hardcore UEP methods ''\\
%UEP by NC\\
%????




